import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import requireTransform from 'vite-plugin-require-transform'
import path from 'path'

// https://vitejs.dev/config/
export default defineConfig({
  plugins: [
    vue(),
    requireTransform({
      fileRegex: /.js$|.vue$/
    })
  ],
  base: './',
  define: {
    'process.env': {}
  },
  resolve: {
    alias: {
      '@': path.resolve(__dirname, 'src')
    }
  },
  server: {
    host: '0.0.0.0',
    port: 5173,
    proxy: {
      '/api': {
        target: 'http://127.0.0.1:8000', // 接口域名（与后端runserver端口保持一致）
        changeOrigin: true,             // 是否跨域
        ws: true,                       // 允许 websocket 代理
        // 重写路径 --> 将 /api 前缀去掉
        rewrite: (path) => path.replace(/^\/api/, '')
      },
      '/media': {
        target: 'http://127.0.0.1:8000', // 媒体文件域名（与后端runserver端口保持一致）
        changeOrigin: true,             // 是否跨域
        ws: true
      }
    }
  }
})
